package smedi.ismedi.web.bff.infrastructure.constant;

public class ConstantField {
    public enum OrganizationTypeEnum {
        /**
         * 公司
         */
        COMPANY,
        /**
         * 公司管理组织
         */
        COMPANY_MANAGEMENT_ORGANIZATION,
        /**
         * 项目管理组织
         */
        PROJECT_MANAGEMENT_ORGANIZATION,
        /**
         * 下级组织
         */
        SUBORDINATE_ORGANIZATION
    }

    public enum HiddenDangerSourceEnum {
        /**
         * 质量模块
         */
        QLT,
        /**
         * 安全模块
         */
        SFC
    }

    public enum ProjectStatusEnum {
        /**
         * 未开工
         */
        NOT_STARTED("未开工"),
        /**
         * 建设中
         */
        CONSTRUCTING("建设中"),
        /**
         * 停工
         */
        STOPPED("停工"),
        /**
         * 完工
         */
        FINISHED("完工"),
        /**
         * 竣工
         */
        COMPLETED("竣工");

        private final String value;

        ProjectStatusEnum(String value) {
            this.value = value;
        }

        public String getValue() {
            return this.value;
        }

        public static String getValue(String key) {
            for (ProjectStatusEnum projectStatusEnum : ProjectStatusEnum.values()) {
                if (projectStatusEnum.name().equals(key)) {
                    return projectStatusEnum.getValue();
                }
            }
            return "";
        }
    }

    public enum EpcTypeEnum {
        /**
         * 自营
         */
        SELF_SUPPORT,
        /**
         * 联合体
         */
        CONSORTIUM,
        /**
         * 自营+联合体
         */
        SELF_SUPPORT_CONSORTIUM
    }

    public enum MonitorTypeEnum {
        /**
         * 默认
         */
        DEFAULT_TYPE("默认"),
        /**
         * 免装
         */
        NOT_INSTALLED("免装"),
        /**
         * 暂停
         */
        STOPPED("暂停");

        private final String value;

        MonitorTypeEnum(String value) {
            this.value = value;
        }

        public String getValue() {
            return this.value;
        }

        public static String getValue(String key) {
            for (MonitorTypeEnum monitorTypeEnum : MonitorTypeEnum.values()) {
                if (monitorTypeEnum.name().equals(key)) {
                    return monitorTypeEnum.getValue();
                }
            }
            return "";
        }
    }
}


